<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0">
<link rel="shortcut icon" type="image/x-icon" href="../assets/favicon.ico">
<title>source\jindo.Effect.js - Jindo Component - AjaxUI@NHN</title>
<link rel="stylesheet" type="text/css" href="../assets/prettify/prettify-min.css" media="screen">
<script type="text/javascript">
	var isMobile = (function() {
		var r = window.devicePixelRatio || 1;
		if (/windows phone/i.test(navigator.userAgent)) { r = 2; }
		
		var s = Math.max(screen.width / r, screen.height / r);
		
		var m = s < 1024;
		var href = m ? "api.mobile.css" : "api.css";
		document.write('<link rel="stylesheet" type="text/css" href="../assets/' + href + '" media="screen">');
		
		return m;
	})();
</script>

<script type="text/javascript" src="../assets/jindo.desktop.min.js"></script>
<script type="text/javascript" src="../assets/jindo_component.min.js"></script>
</head>
<body class="api-page">
<div id="wrap" class="api-main"><!-- 2Depth 접기 : lft_fold 추가 -->

	<div id="header">
		<h1><a href="../index.html"><span class="blind">JindoJS</span></a></h1>
		<div class="info">
			<span class="version">version 1.6.0</span>
			<span class="bar">|</span>
			<span class="help"><span class="ic_help"></span><a href="http://devcode.nhncorp.com/projects/jindo-component/issue" target="_blank">버그신고/문의</a></span>
		</div>
		<div class="menu">
			<button type="button" id="toggle_search_btn" class="btn_sch"><span class="blind">검색</span></button>
			<button type="button" id="toggle_list_btn" class="btn_snb btn_snb_on"><span class="blind">메뉴</span></button>
			<!-- [D] 클릭시 btn_sch_on,btn_snb_on 추가 -->
		</div>
	</div>

	<!-- sch_frm -->
	<div class="sch_frm hide_when_small">
		<h2 class="blind">검색</h2>
		<div class="filter">
			<input type="search" id="api-filter" placeholder="검색어를 입력하세요.">
		</div>
		<div id="search-tab" style="display:none;">
			<ul class="tabs">
			<li class="tc-tab">전체</li>
			<li class="tc-tab">키워드</li>
			<li class="tc-tab">클래스</li>
			<li class="tc-tab">메서드</li>
			<li class="tc-tab">프로퍼티</li>
			<li class="tc-tab">이벤트</li>
			</ul>
			<div class="panels">
				<ul id="api-all" class="tc-panel"></ul>
				<ul id="api-keywords" class="tc-panel"></ul>
				<ul id="api-classes" class="tc-panel"></ul>
				<ul id="api-methods" class="tc-panel"></ul>
				<ul id="api-attrs" class="tc-panel"></ul>
				<ul id="api-events" class="tc-panel"></ul>
			</div>

		</div>
	</div>
	<!-- // sch_frm -->

	<!-- container -->
	<div id="container">
		<!-- left-columns -->
		<div id="left-columns" class="sidemenu has_scrollbar">
			<h2 class="blind"><a href="../index.html"><span>APIs</span></a></h2>
<div class="snb depth1 scrollbar hide_when_small">
	<!-- [D] style="width:135px; height:384px; -->
	<div class="scrollbar-box">
		<div class="scrollbar-content">
			<div><ul>
			            <li class="">
			            	<a href="../classes/jindo.Accordion.html" class="">
			                	Accordion
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.AjaxHistory.html" class="">
			                	AjaxHistory
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.BrowseButton.html" class="">
			                	BrowseButton
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Cache.html" class="">
			                	Cache
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Calendar.html" class="">
			                	Calendar
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Canvas.html" class="">
			                	Canvas
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.CheckBox.html" class="">
			                	CheckBox
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.CircularRolling.html" class="">
			                	CircularRolling
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Clipboard.html" class="">
			                	Clipboard
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Component.html" class="">
			                	Component
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DataBridge.html" class="">
			                	DataBridge
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DatePicker.html" class="">
			                	DatePicker
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DefaultTextValue.html" class="">
			                	DefaultTextValue
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Dialog.html" class="">
			                	Dialog
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DragArea.html" class="">
			                	DragArea
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DropArea.html" class="">
			                	DropArea
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.DynamicTree.html" class="">
			                	DynamicTree
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Effect.html" class="">
			                	Effect
								
								

							    
						        
						            <span class="flag static" title="static"><span class="blind">static</span></span>
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.FileUploader.html" class="">
			                	FileUploader
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.FloatingLayer.html" class="">
			                	FloatingLayer
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Foggy.html" class="">
			                	Foggy
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Formatter.html" class="">
			                	Formatter
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.HTMLComponent.html" class="">
			                	HTMLComponent
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.InlineTextEdit.html" class="">
			                	InlineTextEdit
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.LayerEffect.html" class="">
			                	LayerEffect
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.LayerManager.html" class="">
			                	LayerManager
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.LayerPosition.html" class="">
			                	LayerPosition
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.LazyLoading.html" class="">
			                	LazyLoading
								
								

							    
						        
						            <span class="flag static" title="static"><span class="blind">static</span></span>
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.ModalDialog.html" class="">
			                	ModalDialog
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.MouseGesture.html" class="">
			                	MouseGesture
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.MultipleAjaxRequest.html" class="">
			                	MultipleAjaxRequest
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.NumberFormatter.html" class="">
			                	NumberFormatter
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.NumericStepper.html" class="">
			                	NumericStepper
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Pagination.html" class="">
			                	Pagination
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Rolling.html" class="">
			                	Rolling
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.RollingChart.html" class="">
			                	RollingChart
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.RolloverArea.html" class="">
			                	RolloverArea
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.RolloverClick.html" class="">
			                	RolloverClick
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.ScrollBar.html" class="">
			                	ScrollBar
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.ScrollBox.html" class="">
			                	ScrollBox
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.SelectArea.html" class="">
			                	SelectArea
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.SelectBox.html" class="">
			                	SelectBox
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Slider.html" class="">
			                	Slider
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.StarRating.html" class="">
			                	StarRating
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.TabControl.html" class="">
			                	TabControl
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.TextRange.html" class="">
			                	TextRange
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Timer.html" class="">
			                	Timer
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Transition.html" class="">
			                	Transition
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.Tree.html" class="">
			                	Tree
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.UIComponent.html" class="">
			                	UIComponent
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.UploadQueue.html" class="">
			                	UploadQueue
								
								

							    
						        
			            	</a>
			            </li>
			        
			            <li class="">
			            	<a href="../classes/jindo.WatchInput.html" class="">
			                	WatchInput
								
								

							    
						        
			            	</a>
			            </li>
			        </ul></div>
		</div>
	</div>
	<div class="scrollbar-v">
		<div class="scrollbar-button-up"></div>
		<div class="scrollbar-track">
			<div class="scrollbar-thumb" style="top: 0px; height: 222px; "></div>
		</div>
		<div class="scrollbar-button-down"></div>
	</div>
</div>


<button type="button" title="펼치기" class="btn_open">바로가기 열기<span class="ic"></span></button>
<button type="button" title="접기" class="btn_close">바로가기 닫기<span class="ic"></span></button>

		</div>
		<!-- // left-columns -->

		<!-- main content -->
		<div id="main">
			<div class="main_fix">
				<div class="content">
	
	<h1 class="blind">source/jindo.Effect.js</h1>
	<div class="tc-panel first">
		<dl class="relation">
			<dt>파일명</dt>
			<dd>jindo.Effect.js</dd>
			<dt>경로</dt>
			<dd>source/</dd>
		</dl>
		<div id="file" class="file">
		    <pre class="code prettyprint linenums">/**
	@version&nbsp;#__VERSION__#
**/

/*
	TERMS&nbsp;OF&nbsp;USE&nbsp;-&nbsp;EASING&nbsp;EQUATIONS
	Open&nbsp;source&nbsp;under&nbsp;the&nbsp;BSD&nbsp;License.
	Copyright&nbsp;(c)&nbsp;2001&nbsp;Robert&nbsp;Penner,&nbsp;all&nbsp;rights&nbsp;reserved.
**/

/**
	수치의&nbsp;중간&nbsp;값을&nbsp;쉽게&nbsp;얻을&nbsp;수&nbsp;있게&nbsp;하는&nbsp;static&nbsp;컴포넌트
	새로운&nbsp;이펙트&nbsp;함수를&nbsp;생성한다.
	
	@class&nbsp;jindo.Effect
	@static
	@param&nbsp;{Function}&nbsp;fEffect&nbsp;0~1&nbsp;사이의&nbsp;숫자를&nbsp;인자로&nbsp;받아&nbsp;정해진&nbsp;공식에&nbsp;따라&nbsp;0~1&nbsp;사이의&nbsp;값을&nbsp;리턴하는&nbsp;함수
	@return&nbsp;{Function}&nbsp;이펙트&nbsp;함수.&nbsp;이&nbsp;함수는&nbsp;시작&nbsp;값과&nbsp;종료&nbsp;값을&nbsp;입력하여&nbsp;특정&nbsp;시점에&nbsp;해당하는&nbsp;값을&nbsp;구하는&nbsp;타이밍&nbsp;함수를&nbsp;생성한다.
	
	@keyword&nbsp;effect,&nbsp;효과,&nbsp;animation,&nbsp;애니메이션
**/
jindo.Effect&nbsp;=&nbsp;function(fEffect)&nbsp;{
	if&nbsp;(this&nbsp;instanceof&nbsp;arguments.callee)&nbsp;{
		throw&nbsp;new&nbsp;Error(&quot;You&nbsp;can&#39;t&nbsp;create&nbsp;a&nbsp;instance&nbsp;of&nbsp;this&quot;);
	}
	
	var&nbsp;rxNumber&nbsp;=&nbsp;/^(\-?[0-9\.]+)(%|px|pt|em)?$/,
		rxRGB&nbsp;=&nbsp;/^rgb\(([0-9]+)\s?,\s?([0-9]+)\s?,\s?([0-9]+)\)$/i,
		rxHex&nbsp;=&nbsp;/^#([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,
		rx3to6&nbsp;=&nbsp;/^#([0-9A-F])([0-9A-F])([0-9A-F])$/i;
	
	var&nbsp;getUnitAndValue&nbsp;=&nbsp;function(v)&nbsp;{
		var&nbsp;nValue&nbsp;=&nbsp;v,&nbsp;sUnit;
		
		if&nbsp;(rxNumber.test(v))&nbsp;{
			nValue&nbsp;=&nbsp;parseFloat(v);&nbsp;
			sUnit&nbsp;=&nbsp;RegExp.$2&nbsp;||&nbsp;&quot;&quot;;
		}&nbsp;else&nbsp;if&nbsp;(rxRGB.test(v))&nbsp;{
			nValue&nbsp;=&nbsp;[parseInt(RegExp.$1,&nbsp;10),&nbsp;parseInt(RegExp.$2,&nbsp;10),&nbsp;parseInt(RegExp.$3,&nbsp;10)];
			sUnit&nbsp;=&nbsp;&#39;color&#39;;
		}&nbsp;else&nbsp;if&nbsp;(rxHex.test(v&nbsp;=&nbsp;v.replace(rx3to6,&nbsp;&#39;#$1$1$2$2$3$3&#39;)))&nbsp;{
			nValue&nbsp;=&nbsp;[parseInt(RegExp.$1,&nbsp;16),&nbsp;parseInt(RegExp.$2,&nbsp;16),&nbsp;parseInt(RegExp.$3,&nbsp;16)];
			sUnit&nbsp;=&nbsp;&#39;color&#39;;
		}&nbsp;
				
		return&nbsp;{&nbsp;
			nValue&nbsp;:&nbsp;nValue,&nbsp;
			sUnit&nbsp;:&nbsp;sUnit&nbsp;
		};
	};
	
	return&nbsp;function(nStart,&nbsp;nEnd)&nbsp;{
		var&nbsp;sUnit;
		if&nbsp;(arguments.length&nbsp;&gt;&nbsp;1)&nbsp;{
			nStart&nbsp;=&nbsp;getUnitAndValue(nStart);
			nEnd&nbsp;=&nbsp;getUnitAndValue(nEnd);
			sUnit&nbsp;=&nbsp;nEnd.sUnit;
		}&nbsp;else&nbsp;{
			nEnd&nbsp;=&nbsp;getUnitAndValue(nStart);
			nStart&nbsp;=&nbsp;null;
			sUnit&nbsp;=&nbsp;nEnd.sUnit;
		}&nbsp;
		
		//&nbsp;두개의&nbsp;단위가&nbsp;다르면
		if&nbsp;(nStart&nbsp;&amp;&amp;&nbsp;nEnd&nbsp;&amp;&amp;&nbsp;nStart.sUnit&nbsp;!=&nbsp;nEnd.sUnit)&nbsp;{
			throw&nbsp;new&nbsp;Error(&#39;unit&nbsp;error&#39;);
		}
		
		nStart&nbsp;=&nbsp;nStart&nbsp;&amp;&amp;&nbsp;nStart.nValue;
		nEnd&nbsp;=&nbsp;nEnd&nbsp;&amp;&amp;&nbsp;nEnd.nValue;
		
		var&nbsp;fReturn&nbsp;=&nbsp;function(p)&nbsp;{
			var&nbsp;nValue&nbsp;=&nbsp;fEffect(p),
				getResult&nbsp;=&nbsp;function(s,&nbsp;d)&nbsp;{
					return&nbsp;(d&nbsp;-&nbsp;s)&nbsp;*&nbsp;nValue&nbsp;+&nbsp;s&nbsp;+&nbsp;sUnit;&nbsp;
				};
			
			if&nbsp;(sUnit&nbsp;==&nbsp;&#39;color&#39;)&nbsp;{
				var&nbsp;r&nbsp;=&nbsp;Math.max(0,&nbsp;Math.min(255,&nbsp;parseInt(getResult(nStart[0],&nbsp;nEnd[0]),&nbsp;10)))&nbsp;&lt;&lt;&nbsp;16;
				r&nbsp;|=&nbsp;Math.max(0,&nbsp;Math.min(255,&nbsp;parseInt(getResult(nStart[1],&nbsp;nEnd[1]),&nbsp;10)))&nbsp;&lt;&lt;&nbsp;8;
				r&nbsp;|=&nbsp;Math.max(0,&nbsp;Math.min(255,&nbsp;parseInt(getResult(nStart[2],&nbsp;nEnd[2]),&nbsp;10)));
				
				r&nbsp;=&nbsp;r.toString(16).toUpperCase();
				for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;6&nbsp;-&nbsp;r.length;&nbsp;i++)&nbsp;{
					r&nbsp;=&nbsp;&#39;0&#39;&nbsp;+&nbsp;r;
				}
					
				return&nbsp;&#39;#&#39;&nbsp;+&nbsp;r;
			}
			return&nbsp;getResult(nStart,&nbsp;nEnd);
		};
		
		if&nbsp;(nStart&nbsp;===&nbsp;null)&nbsp;{
			fReturn.setStart&nbsp;=&nbsp;function(s)&nbsp;{
				s&nbsp;=&nbsp;getUnitAndValue(s);
				
				if&nbsp;(s.sUnit&nbsp;!=&nbsp;sUnit)&nbsp;{
					throw&nbsp;new&nbsp;Error(&#39;unit&nbsp;eror&#39;);
				}
				nStart&nbsp;=&nbsp;s.nValue;
			};
		}
		return&nbsp;fReturn;
	};
};

/**
	linear&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;linear
	@static
**/
jindo.Effect.linear&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;s;
});

/**
	easeInSine&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInSine
	@static
**/
jindo.Effect.easeInSine&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;==&nbsp;1)&nbsp;?&nbsp;1&nbsp;:&nbsp;-Math.cos(s&nbsp;*&nbsp;(Math.PI&nbsp;/&nbsp;2))&nbsp;+&nbsp;1;
});
/**
	easeOutSine&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutSine
	@static
**/
jindo.Effect.easeOutSine&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.sin(s&nbsp;*&nbsp;(Math.PI&nbsp;/&nbsp;2));
});
/**
	easeInOutSine&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutSine
	@static
**/
jindo.Effect.easeInOutSine&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInSine(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutSine(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInSine&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInSine
	@static
**/
jindo.Effect.easeOutInSine&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutSine(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInSine(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInQuad&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInQuad
	@static
**/
jindo.Effect.easeInQuad&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;s&nbsp;*&nbsp;s;
});
/**
	easeOutQuad&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutQuad
	@static
**/
jindo.Effect.easeOutQuad&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;-(s&nbsp;*&nbsp;(s&nbsp;-&nbsp;2));
});
/**
	easeInOutQuad&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutQuad
	@static
**/
jindo.Effect.easeInOutQuad&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInQuad(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutQuad(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInQuad&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInQuad
	@static
**/
jindo.Effect.easeOutInQuad&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutQuad(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInQuad(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInCubic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInCubic
	@static
**/
jindo.Effect.easeInCubic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.pow(s,&nbsp;3);
});
/**
	easeOutCubic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutCubic
	@static
**/
jindo.Effect.easeOutCubic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.pow((s&nbsp;-&nbsp;1),&nbsp;3)&nbsp;+&nbsp;1;
});
/**
	easeInOutCubic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutCubic
	@static
**/
jindo.Effect.easeInOutCubic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeIn(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOut(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInCubic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInCubic
	@static
**/
jindo.Effect.easeOutInCubic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOut(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeIn(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInQuart&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInQuart
	@static
**/
jindo.Effect.easeInQuart&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.pow(s,&nbsp;4);
});
/**
	easeOutQuart&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutQuart
	@static
**/
jindo.Effect.easeOutQuart&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;-(Math.pow(s&nbsp;-&nbsp;1,&nbsp;4)&nbsp;-&nbsp;1);
});
/**
	easeInOutQuart&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutQuart
	@static
**/
jindo.Effect.easeInOutQuart&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInQuart(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutQuart(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInQuart&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInQuart
	@static
**/
jindo.Effect.easeOutInQuart&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutQuart(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInQuart(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInQuint&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInQuint
	@static
**/
jindo.Effect.easeInQuint&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.pow(s,&nbsp;5);
});
/**
	easeOutQuint&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutQuint
	@static
**/
jindo.Effect.easeOutQuint&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.pow(s&nbsp;-&nbsp;1,&nbsp;5)&nbsp;+&nbsp;1;
});
/**
	easeInOutQuint&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutQuint
	@static
**/
jindo.Effect.easeInOutQuint&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInQuint(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutQuint(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInQuint&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInQuint
	@static
**/
jindo.Effect.easeOutInQuint&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutQuint(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInQuint(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInCircle&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInCircle
	@static
**/
jindo.Effect.easeInCircle&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;-(Math.sqrt(1&nbsp;-&nbsp;(s&nbsp;*&nbsp;s))&nbsp;-&nbsp;1);
});
/**
	easeOutCircle&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutCircle
	@static
**/
jindo.Effect.easeOutCircle&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;Math.sqrt(1&nbsp;-&nbsp;(s&nbsp;-&nbsp;1)&nbsp;*&nbsp;(s&nbsp;-&nbsp;1));
});
/**
	easeInOutCircle&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutCircle
	@static
**/
jindo.Effect.easeInOutCircle&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInCircle(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutCircle(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutInCircle&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInCircle
	@static
**/
jindo.Effect.easeOutInCircle&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutCircle(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInCircle(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInBack&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInBack
	@static
**/
jindo.Effect.easeInBack&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	var&nbsp;n&nbsp;=&nbsp;1.70158;
	return&nbsp;(s&nbsp;==&nbsp;1)&nbsp;?&nbsp;1&nbsp;:&nbsp;(s&nbsp;/&nbsp;1)&nbsp;*&nbsp;(s&nbsp;/&nbsp;1)&nbsp;*&nbsp;((1&nbsp;+&nbsp;n)&nbsp;*&nbsp;s&nbsp;-&nbsp;n);
});
/**
	easeOutBack&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutBack
	@static
**/
jindo.Effect.easeOutBack&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	var&nbsp;n&nbsp;=&nbsp;1.70158;
	return&nbsp;(s&nbsp;===&nbsp;0)&nbsp;?&nbsp;0&nbsp;:&nbsp;(s&nbsp;=&nbsp;s&nbsp;/&nbsp;1&nbsp;-&nbsp;1)&nbsp;*&nbsp;s&nbsp;*&nbsp;((n&nbsp;+&nbsp;1)&nbsp;*&nbsp;s&nbsp;+&nbsp;n)&nbsp;+&nbsp;1;
});
/**
	easeInOutBack&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutBack
	@static
**/
jindo.Effect.easeInOutBack&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInBack(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutBack(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInElastic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInElastic
	@static
**/
jindo.Effect.easeInElastic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	var&nbsp;p&nbsp;=&nbsp;0,&nbsp;a&nbsp;=&nbsp;0,&nbsp;n;
	if&nbsp;(s&nbsp;===&nbsp;0)&nbsp;{
		return&nbsp;0;
	}
	if&nbsp;((s/=1)&nbsp;==&nbsp;1)&nbsp;{
		return&nbsp;1;
	}
	if&nbsp;(!p)&nbsp;{
		p&nbsp;=&nbsp;0.3;
	}
	if&nbsp;(!a&nbsp;||&nbsp;a&nbsp;&lt;&nbsp;1)&nbsp;{&nbsp;
		a&nbsp;=&nbsp;1;&nbsp;n&nbsp;=&nbsp;p&nbsp;/&nbsp;4;&nbsp;
	}&nbsp;else&nbsp;{
		n&nbsp;=&nbsp;p&nbsp;/&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;*&nbsp;Math.asin(1&nbsp;/&nbsp;a);
	}
	return&nbsp;-(a&nbsp;*&nbsp;Math.pow(2,&nbsp;10&nbsp;*&nbsp;(s&nbsp;-=&nbsp;1))&nbsp;*&nbsp;Math.sin((s&nbsp;-&nbsp;1)&nbsp;*&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;p));
});

/**
	easeOutElastic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutElastic
	@static
**/
jindo.Effect.easeOutElastic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	var&nbsp;p&nbsp;=&nbsp;0,&nbsp;a&nbsp;=&nbsp;0,&nbsp;n;
	if&nbsp;(s&nbsp;===&nbsp;0)&nbsp;{
		return&nbsp;0;
	}
	if&nbsp;((s/=1)&nbsp;==&nbsp;1)&nbsp;{
		return&nbsp;1;
	}
	if&nbsp;(!p)&nbsp;{
		p&nbsp;=&nbsp;0.3;
	}
	if&nbsp;(!a&nbsp;||&nbsp;a&nbsp;&lt;&nbsp;1)&nbsp;{&nbsp;
		a&nbsp;=&nbsp;1;&nbsp;n&nbsp;=&nbsp;p&nbsp;/&nbsp;4;&nbsp;
	}&nbsp;else&nbsp;{
		n&nbsp;=&nbsp;p&nbsp;/&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;*&nbsp;Math.asin(1&nbsp;/&nbsp;a);
	}
	return&nbsp;(a&nbsp;*&nbsp;Math.pow(2,&nbsp;-10&nbsp;*&nbsp;s)&nbsp;*&nbsp;Math.sin((s&nbsp;-&nbsp;n)&nbsp;*&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;p&nbsp;)&nbsp;+&nbsp;1);
});
/**
	easeInOutElastic&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutElastic
	@static
**/
jindo.Effect.easeInOutElastic&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	var&nbsp;p&nbsp;=&nbsp;0,&nbsp;a&nbsp;=&nbsp;0,&nbsp;n;
	if&nbsp;(s&nbsp;===&nbsp;0)&nbsp;{
		return&nbsp;0;
	}
	if&nbsp;((s/=1/2)&nbsp;==&nbsp;2)&nbsp;{
		return&nbsp;1;
	}
	if&nbsp;(!p)&nbsp;{
		p&nbsp;=&nbsp;(0.3&nbsp;*&nbsp;1.5);
	}
	if&nbsp;(!a&nbsp;||&nbsp;a&nbsp;&lt;&nbsp;1)&nbsp;{&nbsp;
		a&nbsp;=&nbsp;1;&nbsp;n&nbsp;=&nbsp;p&nbsp;/&nbsp;4;&nbsp;
	}&nbsp;else&nbsp;{
		n&nbsp;=&nbsp;p&nbsp;/&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;*&nbsp;Math.asin(1&nbsp;/&nbsp;a);
	}
	if&nbsp;(s&nbsp;&lt;&nbsp;1)&nbsp;{
		return&nbsp;-0.5&nbsp;*&nbsp;(a&nbsp;*&nbsp;Math.pow(2,&nbsp;10&nbsp;*&nbsp;(s&nbsp;-=&nbsp;1))&nbsp;*&nbsp;Math.sin(&nbsp;(s&nbsp;-&nbsp;n)&nbsp;*&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;p&nbsp;));
	}
	return&nbsp;a&nbsp;*&nbsp;Math.pow(2,&nbsp;-10&nbsp;*&nbsp;(s&nbsp;-=&nbsp;1))&nbsp;*&nbsp;Math.sin(&nbsp;(s&nbsp;-&nbsp;n)&nbsp;*&nbsp;(2&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;p&nbsp;)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;1;
});

/**
	easeOutBounce&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutBounce
	@static
**/
jindo.Effect.easeOutBounce&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	if&nbsp;(s&nbsp;&lt;&nbsp;(1&nbsp;/&nbsp;2.75))&nbsp;{
		return&nbsp;(7.5625&nbsp;*&nbsp;s&nbsp;*&nbsp;s);
	}&nbsp;else&nbsp;if&nbsp;(s&nbsp;&lt;&nbsp;(2&nbsp;/&nbsp;2.75))&nbsp;{
		return&nbsp;(7.5625&nbsp;*&nbsp;(s&nbsp;-=&nbsp;(1.5&nbsp;/&nbsp;2.75))&nbsp;*&nbsp;s&nbsp;+&nbsp;0.75);
	}&nbsp;else&nbsp;if&nbsp;(s&nbsp;&lt;&nbsp;(2.5&nbsp;/&nbsp;2.75))&nbsp;{
		return&nbsp;(7.5625&nbsp;*&nbsp;(s&nbsp;-=&nbsp;(2.25&nbsp;/&nbsp;2.75))&nbsp;*&nbsp;s&nbsp;+&nbsp;0.9375);
	}&nbsp;else&nbsp;{
		return&nbsp;(7.5625&nbsp;*&nbsp;(s&nbsp;-=&nbsp;(2.625&nbsp;/&nbsp;2.75))&nbsp;*&nbsp;s&nbsp;+&nbsp;0.984375);
	}&nbsp;
});
/**
	easeInBounce&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInBounce
	@static
**/
jindo.Effect.easeInBounce&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;1&nbsp;-&nbsp;jindo.Effect.easeOutBounce(0,&nbsp;1)(1&nbsp;-&nbsp;s);
});
/**
	easeInOutBounce&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutBounce
	@static
**/
jindo.Effect.easeInOutBounce&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInBounce(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutBounce(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	easeInExpo&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInExpo
	@static
**/
jindo.Effect.easeInExpo&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;===&nbsp;0)&nbsp;?&nbsp;0&nbsp;:&nbsp;Math.pow(2,&nbsp;10&nbsp;*&nbsp;(s&nbsp;-&nbsp;1));
});
/**
	easeOutExpo&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutExpo
	@static
**/
jindo.Effect.easeOutExpo&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;==&nbsp;1)&nbsp;?&nbsp;1&nbsp;:&nbsp;-Math.pow(2,&nbsp;-10&nbsp;*&nbsp;s&nbsp;/&nbsp;1)&nbsp;+&nbsp;1;
});
/**
	easeInOutExpo&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeInOutExpo
	@static
**/
jindo.Effect.easeInOutExpo&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeInExpo(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeOutExpo(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});
/**
	easeOutExpo&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;easeOutInExpo
	@static
**/
jindo.Effect.easeOutInExpo&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.easeOutExpo(0,&nbsp;1)(2&nbsp;*&nbsp;s)&nbsp;*&nbsp;0.5&nbsp;:&nbsp;jindo.Effect.easeInExpo(0,&nbsp;1)((2&nbsp;*&nbsp;s)&nbsp;-&nbsp;1)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;0.5;
});

/**
	Cubic-Bezier&nbsp;curve
	@method&nbsp;_cubicBezier
	@private
	@param&nbsp;{Number}&nbsp;x1
	@param&nbsp;{Number}&nbsp;y1
	@param&nbsp;{Number}&nbsp;x2
	@param&nbsp;{Number}&nbsp;y2
	@see&nbsp;http://www.netzgesta.de/dev/cubic-bezier-timing-function.html&nbsp;
**/
jindo.Effect._cubicBezier&nbsp;=&nbsp;function(x1,&nbsp;y1,&nbsp;x2,&nbsp;y2){
	return&nbsp;function(t){
		var&nbsp;cx&nbsp;=&nbsp;3.0&nbsp;*&nbsp;x1,&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;	bx&nbsp;=&nbsp;3.0&nbsp;*&nbsp;(x2&nbsp;-&nbsp;x1)&nbsp;-&nbsp;cx,&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;	ax&nbsp;=&nbsp;1.0&nbsp;-&nbsp;cx&nbsp;-&nbsp;bx,&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;	cy&nbsp;=&nbsp;3.0&nbsp;*&nbsp;y1,&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;	by&nbsp;=&nbsp;3.0&nbsp;*&nbsp;(y2&nbsp;-&nbsp;y1)&nbsp;-&nbsp;cy,&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;	ay&nbsp;=&nbsp;1.0&nbsp;-&nbsp;cy&nbsp;-&nbsp;by;
		
	&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;sampleCurveX(t)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;((ax&nbsp;*&nbsp;t&nbsp;+&nbsp;bx)&nbsp;*&nbsp;t&nbsp;+&nbsp;cx)&nbsp;*&nbsp;t;
	&nbsp;&nbsp;&nbsp;&nbsp;}
	&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;sampleCurveY(t)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;((ay&nbsp;*&nbsp;t&nbsp;+&nbsp;by)&nbsp;*&nbsp;t&nbsp;+&nbsp;cy)&nbsp;*&nbsp;t;
	&nbsp;&nbsp;&nbsp;&nbsp;}
	&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;sampleCurveDerivativeX(t)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;(3.0&nbsp;*&nbsp;ax&nbsp;*&nbsp;t&nbsp;+&nbsp;2.0&nbsp;*&nbsp;bx)&nbsp;*&nbsp;t&nbsp;+&nbsp;cx;
	&nbsp;&nbsp;&nbsp;&nbsp;}
	&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;solveCurveX(x,epsilon)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;	var&nbsp;t0,&nbsp;t1,&nbsp;t2,&nbsp;x2,&nbsp;d2,&nbsp;i;
	&nbsp;&nbsp;&nbsp;&nbsp;	for&nbsp;(t2&nbsp;=&nbsp;x,&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&lt;8;&nbsp;i++)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;		x2&nbsp;=&nbsp;sampleCurveX(t2)&nbsp;-&nbsp;x;&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;		if&nbsp;(Math.abs(x2)&nbsp;&lt;&nbsp;epsilon)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;			return&nbsp;t2;
	&nbsp;&nbsp;&nbsp;&nbsp;		}&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;		d2&nbsp;=&nbsp;sampleCurveDerivativeX(t2);&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;		if(Math.abs(d2)&nbsp;&lt;&nbsp;1e-6)&nbsp;{
	&nbsp;&nbsp;&nbsp;&nbsp;			break;
	&nbsp;&nbsp;&nbsp;&nbsp;		}&nbsp;
	&nbsp;&nbsp;&nbsp;&nbsp;		t2&nbsp;=&nbsp;t2&nbsp;-&nbsp;x2&nbsp;/&nbsp;d2;
	&nbsp;&nbsp;&nbsp;&nbsp;	}
		&nbsp;&nbsp;&nbsp;&nbsp;t0&nbsp;=&nbsp;0.0;&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;t1&nbsp;=&nbsp;1.0;&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;t2&nbsp;=&nbsp;x;&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(t2&nbsp;&lt;&nbsp;t0)&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;t0;
		&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(t2&nbsp;&gt;&nbsp;t1)&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;t1;
		&nbsp;&nbsp;&nbsp;&nbsp;}
		&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(t0&nbsp;&lt;&nbsp;t1)&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;	x2&nbsp;=&nbsp;sampleCurveX(t2);&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;	if&nbsp;(Math.abs(x2&nbsp;-&nbsp;x)&nbsp;&lt;&nbsp;epsilon)&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;		return&nbsp;t2;
		&nbsp;&nbsp;&nbsp;&nbsp;	}&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;	if&nbsp;(x&nbsp;&gt;&nbsp;x2)&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;		t0&nbsp;=&nbsp;t2;
		&nbsp;&nbsp;&nbsp;&nbsp;	}&nbsp;else&nbsp;{
		&nbsp;&nbsp;&nbsp;&nbsp;		t1&nbsp;=&nbsp;t2;
		&nbsp;&nbsp;&nbsp;&nbsp;	}&nbsp;
		&nbsp;&nbsp;&nbsp;&nbsp;	t2&nbsp;=&nbsp;(t1&nbsp;-&nbsp;t0)&nbsp;*&nbsp;0.5&nbsp;+&nbsp;t0;
		&nbsp;&nbsp;&nbsp;&nbsp;}
	&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;t2;&nbsp;//&nbsp;Failure.
	&nbsp;&nbsp;&nbsp;&nbsp;}
	&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;sampleCurveY(solveCurveX(t,&nbsp;1&nbsp;/&nbsp;200));
	};
};

/**
	Cubic-Bezier&nbsp;함수를&nbsp;생성한다.
	
	@method&nbsp;cubicBezier
	@static
	@see&nbsp;http://en.wikipedia.org/wiki/B%C3%A9zier_curve
	@param&nbsp;{Number}&nbsp;x1&nbsp;control&nbsp;point&nbsp;1의&nbsp;x좌표
	@param&nbsp;{Number}&nbsp;y1&nbsp;control&nbsp;point&nbsp;1의&nbsp;y좌표
	@param&nbsp;{Number}&nbsp;x2&nbsp;control&nbsp;point&nbsp;2의&nbsp;x좌표
	@param&nbsp;{Number}&nbsp;y2&nbsp;control&nbsp;point&nbsp;2의&nbsp;y좌표
	@return&nbsp;{Function}&nbsp;생성된&nbsp;이펙트&nbsp;함수
**/
jindo.Effect.cubicBezier&nbsp;=&nbsp;function(x1,&nbsp;y1,&nbsp;x2,&nbsp;y2){
	return&nbsp;jindo.Effect(jindo.Effect._cubicBezier(x1,&nbsp;y1,&nbsp;x2,&nbsp;y2));
};

/**
	Cubic-Bezier&nbsp;커브를&nbsp;이용해&nbsp;CSS3&nbsp;Transition&nbsp;Timing&nbsp;Function과&nbsp;동일한&nbsp;ease&nbsp;함수
	
	@example
		jindo.Effect.cubicBezier(0.25,&nbsp;0.1,&nbsp;0.25,&nbsp;1);
	
	@method&nbsp;cubicEase
	@static
	@see&nbsp;http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag
**/
jindo.Effect.cubicEase&nbsp;=&nbsp;jindo.Effect.cubicBezier(0.25,&nbsp;0.1,&nbsp;0.25,&nbsp;1);

/**
	Cubic-Bezier&nbsp;커브를&nbsp;이용해&nbsp;CSS3&nbsp;Transition&nbsp;Timing&nbsp;Function과&nbsp;동일한&nbsp;easeIn&nbsp;함수

	@example
		jindo.Effect.cubicBezier(0.42,&nbsp;0,&nbsp;1,&nbsp;1);
	
	@method&nbsp;cubicEaseIn
	@static
	@see&nbsp;http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag
**/
jindo.Effect.cubicEaseIn&nbsp;=&nbsp;jindo.Effect.cubicBezier(0.42,&nbsp;0,&nbsp;1,&nbsp;1);

/**
	Cubic-Bezier&nbsp;커브를&nbsp;이용해&nbsp;CSS3&nbsp;Transition&nbsp;Timing&nbsp;Function과&nbsp;동일한&nbsp;easeOut&nbsp;함수
	
	@example
		jindo.Effect.cubicBezier(0,&nbsp;0,&nbsp;0.58,&nbsp;1);
	
	@method&nbsp;cubicEaseOut
	@static
	@see&nbsp;http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag
**/
jindo.Effect.cubicEaseOut&nbsp;=&nbsp;jindo.Effect.cubicBezier(0,&nbsp;0,&nbsp;0.58,&nbsp;1);

/**
	Cubic-Bezier&nbsp;커브를&nbsp;이용해&nbsp;CSS3&nbsp;Transition&nbsp;Timing&nbsp;Function과&nbsp;동일한&nbsp;easeInOut&nbsp;함수
	
	@example
		jindo.Effect.cubicBezier(0.42,&nbsp;0,&nbsp;0.58,&nbsp;1);
	
	@method&nbsp;cubicEaseInOut
	@static
	@see&nbsp;http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag
**/
jindo.Effect.cubicEaseInOut&nbsp;=&nbsp;jindo.Effect.cubicBezier(0.42,&nbsp;0,&nbsp;0.58,&nbsp;1);

/**
	Cubic-Bezier&nbsp;커브를&nbsp;이용해&nbsp;easeOutIn&nbsp;함수를&nbsp;구한다.
	
	@example
		jindo.Effect.cubicBezier(0,&nbsp;0.42,&nbsp;1,&nbsp;0.58);
	
	@method&nbsp;cubicEaseOutIn
	@static
**/
jindo.Effect.cubicEaseOutIn&nbsp;=&nbsp;jindo.Effect.cubicBezier(0,&nbsp;0.42,&nbsp;1,&nbsp;0.58);

/**
	overphase&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;overphase
	@static
**/
jindo.Effect.overphase&nbsp;=&nbsp;jindo.Effect(function(s){
	s&nbsp;/=&nbsp;0.652785;
	return&nbsp;(Math.sqrt((2&nbsp;-&nbsp;s)&nbsp;*&nbsp;s)&nbsp;+&nbsp;(0.1&nbsp;*&nbsp;s)).toFixed(5);	
});

/**
	sin&nbsp;곡선의&nbsp;일부를&nbsp;이용한&nbsp;sinusoidal&nbsp;이펙트&nbsp;함수
	
	@method&nbsp;sinusoidal
	@static
**/
jindo.Effect.sinusoidal&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(-Math.cos(s&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;2)&nbsp;+&nbsp;0.5;
});

/**
	mirror&nbsp;이펙트&nbsp;함수
	sinusoidal&nbsp;이펙트&nbsp;함수를&nbsp;사용한다.
	
	@method&nbsp;mirror
	@static
**/
jindo.Effect.mirror&nbsp;=&nbsp;jindo.Effect(function(s)&nbsp;{
	return&nbsp;(s&nbsp;&lt;&nbsp;0.5)&nbsp;?&nbsp;jindo.Effect.sinusoidal(0,&nbsp;1)(s&nbsp;*&nbsp;2)&nbsp;:&nbsp;jindo.Effect.sinusoidal(0,&nbsp;1)(1&nbsp;-&nbsp;(s&nbsp;-&nbsp;0.5)&nbsp;*&nbsp;2);
});

/**
	nPulse의&nbsp;진동수를&nbsp;가지는&nbsp;cos&nbsp;함수를&nbsp;구한다.
	
	@method&nbsp;pulse
	@static
	@param&nbsp;{Number}&nbsp;nPulse&nbsp;진동수
	@return&nbsp;{Function}&nbsp;생성된&nbsp;이펙트&nbsp;함수
	@example
		var&nbsp;f&nbsp;=&nbsp;jindo.Effect.pulse(3);&nbsp;//진동수&nbsp;3을&nbsp;가지는&nbsp;함수를&nbsp;리턴
		//시작&nbsp;수치&nbsp;값과&nbsp;종료&nbsp;수치&nbsp;값을&nbsp;설정해&nbsp;jindo.Effect&nbsp;함수를&nbsp;생성
		var&nbsp;fEffect&nbsp;=&nbsp;f(0,&nbsp;100);
		fEffect(0);&nbsp;=&gt;&nbsp;0
		fEffect(1);&nbsp;=&gt;&nbsp;100
**/
jindo.Effect.pulse&nbsp;=&nbsp;function(nPulse)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;jindo.Effect(function(s){
		return&nbsp;(-Math.cos((s&nbsp;*&nbsp;(nPulse&nbsp;-&nbsp;0.5)&nbsp;*&nbsp;2)&nbsp;*&nbsp;Math.PI)&nbsp;/&nbsp;2)&nbsp;+&nbsp;0.5;	
	});
};

/**
	nPeriod의&nbsp;주기와&nbsp;nHeight의&nbsp;진폭을&nbsp;가지는&nbsp;sin&nbsp;함수를&nbsp;구한다.
	
	@method&nbsp;wave
	@static
	@param&nbsp;{Number}&nbsp;nPeriod&nbsp;주기
	@param&nbsp;{Number}&nbsp;nHeight&nbsp;진폭
	@return&nbsp;{Function}&nbsp;생성된&nbsp;이펙트&nbsp;함수
	@example
		var&nbsp;f&nbsp;=&nbsp;jindo.Effect.wave(3,&nbsp;1);&nbsp;//주기&nbsp;3,&nbsp;높이&nbsp;1을&nbsp;가지는&nbsp;함수를&nbsp;리턴
		//시작&nbsp;수치&nbsp;값과&nbsp;종료&nbsp;수치&nbsp;값을&nbsp;설정해&nbsp;jindo.Effect&nbsp;함수를&nbsp;생성
		var&nbsp;fEffect&nbsp;=&nbsp;f(0,&nbsp;100);
		fEffect(0);&nbsp;=&gt;&nbsp;0
		fEffect(1);&nbsp;=&gt;&nbsp;0
**/
jindo.Effect.wave&nbsp;=&nbsp;function(nPeriod,&nbsp;nHeight)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;jindo.Effect(function(s){
&nbsp;&nbsp;&nbsp;&nbsp;	return&nbsp;(nHeight&nbsp;||&nbsp;1)&nbsp;*&nbsp;(Math.sin(nPeriod&nbsp;*&nbsp;(s&nbsp;*&nbsp;360)&nbsp;*&nbsp;Math.PI&nbsp;/&nbsp;180)).toFixed(5);
	});
};

/**
	easeIn&nbsp;이펙트&nbsp;함수
	easeInCubic&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;easeIn
	@static
	@see&nbsp;easeInCubic
**/
jindo.Effect.easeIn&nbsp;=&nbsp;jindo.Effect.easeInCubic;
/**
	easeOut&nbsp;이펙트&nbsp;함수
	easeOutCubic&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;easeOut
	@static
	@see&nbsp;easeOutCubic
**/
jindo.Effect.easeOut&nbsp;=&nbsp;jindo.Effect.easeOutCubic;
/**
	easeInOut&nbsp;이펙트&nbsp;함수
	easeInOutCubic&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;easeInOut
	@static
	@see&nbsp;easeInOutCubic
**/
jindo.Effect.easeInOut&nbsp;=&nbsp;jindo.Effect.easeInOutCubic;
/**
	easeOutIn&nbsp;이펙트&nbsp;함수
	easeOutInCubic&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;easeOutIn
	@static
	@see&nbsp;easeOutInCubic
**/
jindo.Effect.easeOutIn&nbsp;=&nbsp;jindo.Effect.easeOutInCubic;
/**
	bounce&nbsp;이펙트&nbsp;함수
	easeOutBounce&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;bounce
	@static
	@see&nbsp;easeOutBounce
**/
jindo.Effect.bounce&nbsp;=&nbsp;jindo.Effect.easeOutBounce;
/**
	elastic&nbsp;이펙트&nbsp;함수
	easeInElastic&nbsp;함수와&nbsp;동일하다.
	
	@method&nbsp;elastic
	@static
	@see&nbsp;easeInElastic
**/
jindo.Effect.elastic&nbsp;=&nbsp;jindo.Effect.easeInElastic;</pre>
		</div>
	</div>
</div>

			</div>
		</div>
		<!-- // main content -->

	</div>
	<!-- // container -->

	<!-- footer -->
	<div id="footer">
		<p>Copyright ©<a href="http://nhncorp.com/" target="_blank">NHN Corp.</a> Platform Ajax Team. All Rights Reserved.</p>
	</div>
	<!-- // footer -->

</div>
<!-- // wrap -->

<style type="text/css">

	.item {
		transition:background .2s linear;
		-webkit-transition:background .2s linear;
		-moz-transition:background .2s linear;
		-o-transition:background .2s linear;
		-ms-transition:background .2s linear;
	}
	
	.highlight {
		background-color:#ffffd8 !important;
	}
	
	li.selected a.highlight {
		background-color:#aa8 !important;
	}
	
	.hide-deprecated .deprecated-item, .hide-inherited .inherited-item, .private {
		display:none;
	}
	
	.scrollbar-v, .scrollbar-h { display:none; }
	.scrollbar-show { display:block; }
	
	.api-page .tbl_fold .more_history { display:none; }
	
	/* FILE */
	.file pre.code {
		border:1px solid #ccc;
		padding:0;
	}
	
	.file ol {
		padding-left: 4em;
		background-color: #f9f9f9;
	}

	.file ol li {
		list-style: decimal;
		border-left:1px solid #ccc;
		padding:2px 4px;
	}
	
	.file li.L1, .file li.L3, .file li.L5, .file li.L7, .file li.L9 {
		background-color: #f9f9f9;	
	}

	.file li.L0, .file li.L2, .file li.L4, .file li.L6, .file li.L8 { 
		background-color: #f0f0f0;
	}
	
</style>
<script type="text/javascript" src="../assets/prettify/prettify-min.js"></script>
<script type="text/javascript" src="../assets/hash.js"></script>
<script type="text/javascript" src="../assets/api-list.js"></script>
<script type="text/javascript" src="../assets/api-search.js"></script>
<script type="text/javascript" src="../assets/../api.js?callback=APISearch.setData"></script>
<script type="text/javascript">
	var projectRoot = "../";
	var projectAssets = "../assets";
	
    apiDocs(projectAssets);	
</script>
</body>
</html>